1. FIELD OF THE INVENTION
The present invention relates to the field of data processing and, more particularly, to pen based methods and apparatus for selecting, indexing and retrieving data.
2. BACKGROUND ART
Technological advances have produced computer storage systems with the capacity to store large amounts of data. Word processing files, notebook pages, date book pages, calendar pages or graphic images may all be stored in a single computing system. However, once the data is stored, retrieving desired data from such a large amount of stored data can become an intractable problem.
One solution to this data retrieval problem is to give each stored data file a name, and then provide the user with a list of file names from which to choose. This list, or index, is usually ordered in some manner, for example, chronologically or alphabetically, or by file size or type. Unfortunately, this indexing system may have the drawback of having file names that do not completely describe the contents of each file. In large database systems, the number of file names in the index may be so large as to make it difficult for a user to locate a desired file.
A large computer system requires a data file storage and retrieval system that is easy to use and efficient. One way of meeting this requirement is to use reduced images of the original files as index images. In prior art systems, original images are stored along with reduced images thereof. These reduced images (which typically consist of the first page of displayed information) are stored in a separate index file as index images. To retrieve a particular file, a desired image is selected from a display comprised of all of the index images. However, the reduction of the entire original displayed page frequently degrades the image quality of the index images. For example, in a document image containing characters and graphic patterns, the characters cannot be read if the image is reduced to the limit of recognition for the graphic patterns. Conversely, if the the image is reduced to the limit of recognition for the characters, the graphic patterns are not sufficiently reduced, resulting in inefficient data compaction.
A typical computer system consists of a central processing unit (CPU), main memory, such as random access memory (RAM), a data entry device, including a cursor positioning device, a mass storage device, such as one or more disk drives, a display and/or a printer. In the prior art, the data entry device often consists of a keyboard on which a user enters data by typing. The cursor positioning device of a prior art computer system may be a keypad, "mouse," joystick, or other cursor positioning device.
There are also computer systems that are designed to accept handwritten data entry rather than, or in addition to, keyboard data entry. In a handwritten data entry computer system, the user enters handwritten data directly on the display of the computer system using a pen, stylus, or other writing device. A user may also enter data on a digitizing tablet or other input device, and the written input image is displayed on a separate computer display output device. The writing device for entering handwritten or freestyle stroke input information may be any suitable input device, such as a pen or stylus, mouse, trackball, pointer, or even a person's fingers.
One class of handwriting entry computer system capable of receiving handwritten data input is referred to as "pen based". In a pen based computer system, a user can input information to the computer by "writing" directly on the display. A writing device, such as a pen or stylus, is used to enter information via the display. To input information in a typical pen based computer system, a user touches the stylus to the display and writes as on a piece of paper, that is, by making a series of pen strokes to form letters and words. A line appears on the display that follows the path of travel of the stylus point, so that the pen strokes appear on the display as ink would appear on a handwritten page. Thus, the user enters information into the computer by writing directly on the display. The strokes of writing that appear on the display are referred to here as "ink".
In addition to handwritten letters and words, special functions based on input strokes are supported on pen based computer systems. For example, in one prior art pen based computer system, a writer may delete previously entered handwritten input by making the strokes of an "X" over the unwanted entry. These special functional strokes or actions are referred to here as "gestures".
Pen-based computers can be used with software that creates a computer-based implementation of a paper notebook. A pen-based computer "notebook" program may have a number of standard "pages" on which handwritten notes can be written. For example, the pages may include monthly, daily and weekly calendar pages, an address book and blank note or scratch pages. FIG. 1 illustrates a sample page of data 101. Page 101 is a calendar page for the entire month of August, 1995. Using a hand-held stylus, the user has entered some information concerning a lunch meeting at a particular restaurant. In and around the calendar square for August 15, the user has written "Lunch 1:00," "Joe Brown 555-1234" and "Al's Cafe 555-3800."
FIG. 2 illustrates another page of information 201. Page 201 is a ruled blank note page. Here, the user has jotted down some information concerning a finance meeting including the date, an agenda, a name and a phone number. Specifically, the user has written "11/4 3:00 PM," "Finance Meeting," "Agenda:" followed by "--Taxes" and "--Budget." At the bottom of the page, the user has written "Jane Olsen, CPA 555-2213."
One prior art indexing system is described in U.S. Pat. No. 4,808,987 issued Feb. 28, 1989, entitled "Image Data File Storage and Retrieval System for an Image Data Filing System." (Takeda, et al.). In Takeda, partial areas of an image are enlarged and/or reduced at independent magnification for each partial area, and are combined to prepare an index image which is stored. A desired image is retrieved based on a list of the index images.
In one embodiment of Takeda, the entire image is reduced to fit into a user-defined partial "window." The reduced image is then enlarged at the direction of the user until the characters displayed are large enough to be recognized. If the enlargement creates an image too large to be displayed in the partial window, the user may scroll the original image until the desired partial area to be stored is displayed in the window.
Although the indexing system described in Takeda can be used to create index images that are recognizable and readable, this solution is both cumbersome and inefficient. In Takeda, five steps are required to store an index image: (1) the partial area window is defined; (2) the original image is reduced to fit within this partial area window; (3) the original image is repeatedly enlarged or reduced by the user until the character or image is legible; (4) the original image is scrolled up, down, left or right by the user until the desired portion of the original image is displayed in the partial area window; and (5) a copy of the index image displayed in the window is stored. This system is time-consuming in that a user must repeatedly reduce and enlarge the image manually, by trial and error, to produce an index image that is both legible and recognizable. This trial and error procedure increases operation and storage time considerably. Further, storage of the entire image displayed in the window for every index image requires a large storage capacity.
In a typical indexing system, a portion of an original document is selected, copied, and stored for use as a visual index. A collection of these visual indexes are displayed in a gallery. By choosing one of these visual indexes, the associated original document is retrieved and displayed.
Confusion may arise when the computing system must differentiate a selection gesture from text or graphic information. For example, if the user is allowed to select a portion of a document merely by drawing a closed curve around the desired screen information, the selection system must be able to differentiate this closed curve from various other closed curves that may occur during normal handwriting. Many letters (e.g., a, b, d, e, g, o, p, q) contain a closed curve. Further, the selection system should be able to discern between the case where the user wants to select and where the user merely wants to draw a closed curve on the page.
Unfortunately, prior art methods for selecting that portion of the original document that is to serve as the indexing segment are cumbersome and inefficient. For example, in one prior art method, a separate selection mode is used. The user must touch a button or icon to activate the selection mode, and then delineates the selected area of the screen. Use of a separate button requires movement from the writing area to the button, and then back again, interrupting the user's normal writing action.
In another prior art method, selection is accomplished by pressing a button located on the barrel of the pen. Using this button is often awkward for the user, who may activate it accidentally during normal writing. Further, not all pen-based computing systems include a button on their pen or stylus.
Another prior art selection method involves having the user maintain a constant pen position on the screen for a certain amount of time. The detection of a "hold time out" serves as a selection delimiter. In other words, holding the pen still touching the screen signals the computing system that the user wishes to enter selection coordinates. A drawback of this prior art method is that people frequently hold their pen still while thinking, resulting in inadvertent activation of the selection mode. Alternatively, people may anticipate that they have held the pen steady long enough even when they haven't, resulting in repeated attempts to activate the selection mode. Also, the "hold time out" may misinterpret a period (".") as a hold.
Still another prior art method detects the proximity of the pen from the screen and uses this proximity as a delimiter for activating the selection mode. The problem with this method is that users typically do not pay attention to the spatial relationship between the pen and the screen, resulting in inadvertent selection activation.